package com.ikun.core.pojo.dto;

import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.*;
import org.springframework.web.multipart.MultipartFile;

@Data
public class FileUploadDTO {

    @NotNull(message = "文件不能为空")
    private MultipartFile file;

    @NotBlank(message = "文件哈希值不能为空")
    @Pattern(regexp = "^[a-fA-F0-9]{32}$", message = "哈希值必须是有效的32位MD5")
    private String hash;

//    @NotBlank(message = "文件名不能为空")
//    @Length(max = 255, message = "文件名不能超过255个字符")
//    private String name;
//
//    @NotBlank(message = "原始文件名不能为空")
//    @Length(max = 255, message = "原始文件名不能超过255个字符")
//    private String originName;
//
//    @Min(value = 1, message = "目录ID必须大于0")
//    private Integer dirId;
//
//    @NotNull(message = "文件类型不能为空")
//    @Min(value = 1)
//    @Max(value = 5)
//    private Byte type; // 1:图片, 2:视频, 3:音频, 4:文档, 5:其他
//
//    @NotNull(message = "来源不能为空")
//    @Min(value = 1)
//    @Max(value = 2)
//    private Byte source; // 1:前台上传, 2:后台上传
//
//    // 可选：扩展字段
//    private String ext;
//    private Long size; // 前端可传，也可服务端计算
}
